<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
    <script>
        // 一.什么是git ？？ github  gitee 混了
        // 版本（历史）控制工具 
        // git 可以离线使用
        // svn cvs  git（分布式：没有中心控制）；
        // 二.git 安装 
        // 下载git  https://git-scm.com/  下一步安装
        // git 是否安装好？ 
        // 1.git --version 查看版本  2.鼠标右键 
        // 三.使用git
        // 配置一次 先配置git的用户名 和 邮箱 全局配置
        // git config --global user.name "你的名字"
        // git config --global user.email "你的名字"
        // 如何查看是否配置好了 
        // git config --list

        // 四、git 操作
        // 1.初始化git仓库 ：一旦初始化仓库后 ，这个仓库的里文件就会被git 管控起来 。  git init   ; 创建一个隐藏的文件夹 .git(系统文件夹) 来记录 git版本
        // 三个区域 1.工作区域（你看到的代码区域） 2.暂存区（缓存区域） 3.仓库
        // git status 查看git仓库目前的状态
        // git add 把文件添加到暂存区域（临时存储）
        // git commit 把文件提交到本地仓库（永久保存）
        //     1. 没有被追踪的状态 Untracked
        //     2. 暂存区状态  已暂存 staged
        //     3. 已提交     commited
        //     4. 修改了  modified

        // 五、各个区域的回退 
        // 1.回退工作区内容 git checkout .
        // 2.回退暂存区域里的内容到工作区  git reset 文件名    git reset . 
        // 3.回退仓库 ： 只能回退版本 （历史记录） 
                // git log 查看 git 提交的版本 （历史记录）
                // git log --oneline 
                // git reset --hard commitID
                // vim 编辑器 写 i 出现insert之后可以写东西
                // 写完 按 ESC 然后 输入 :wq 保存并退出
        // 4.比较 git 区域的不同
        // git diff : 比较工作区和暂存区区别
        // git diff --cached :比较暂存区和仓库的区别

        // 六 、分支 ：简单理解 git 可以克隆一份代码出来放在一个分支
        // 1.查看分支 git branch
        // 2.创建分支 git branch 分支名称
        // 3.切换分支 git checkout 分支名称

        // 七、删除和合并分支，解决冲突
        // 1.合并分支 
            // 切换到合并分支上去 比如要合并到  master 切花到master
            // 当前是master分支，要把mybrancha分支合并到master分支： git merge 分支名称
        // 2.合并完成之后可以删除分支 git branch -d 分支名称
        // 注意：删除分支 ，那么分支需要被合并才能删除
        // git checkout -b myb 切换并创建一个myb分支
        // 强制删除 git branch -D 分支名称
        // 3.解决冲突 
        // 冲突1.2个分支 修改了同个文件 同一内容 ，然后合并 那么出现冲突
        // 2.线下仓库和线上仓库同时修改同一文件 同一内容 拉取或者推送的时候会造成冲突

        // 八 、同步线上仓库 ：github 和 gitee
        // 仓库只能有一个 
        // 1.本地有仓库 ：把本地仓库推到线上 连接 线上地址 然后执行三部
        // git add .  git commit -m ""  git push
        // 注意 :如果线上修改了内容 ，那么本地和线上内容不同 ，需要重新同步一下线上仓库代码 ； git pull
        // 2.线上已经有仓库
        // git clone 线上的http地址
        // ssh 下载线上内容
            // 公钥  秘钥 
        // 把公钥配置到gitee 或者 github的设置上面


    </script>
</body>
</html>